在進一步編寫程式前,我發現我目前寫的每篇文章都會跟著被版本控制追蹤,這樣這些文章變動與 commit 記錄就會與程式的邏輯混在一起,讓我難以透過 Git 的 history 去追循我的程式碼紀錄、錯誤是在何時發生的等等,所以我會希望兩者的版本控制能夠分離。
最簡單暴力的做法就是將 ~/projects/my-digital-garden/content
資料夾加入 .gitignore
,但這樣的缺點是我的內容不會有版本控制,而且我也會希望有些該目錄底下的內容是伴隨著主程式進版控的,比如說不太變動或測試顯示效果用的的文章。
這時就可以透過編寫專案目錄底下(後面改用 @
代表專案目錄)的 nuxt.config.ts
去多新增一個資料夾作為文章內容目錄的來源。
該檔案內容如下:
export default defineNuxtConfig({
modules: ['@nuxt/content'],
content: {
sources: [
{
base: resolve(__dirname, '_write/content'),
driver: 'fs'
}
],
},
})
這代表的專案目錄下我新增了一個 _write
目錄,我會將這個重新作為 Obsidian 的 Vault 目錄,並在該目錄下新增 content
目錄作為 Nuxt Content 額外的內容來源。
並且我會將該目錄 @/_write
加入 .gitignore
中:
node_modules
*.log*
.nuxt
.nitro
.cache
.output
.env
dist
# directroies for content
_write
_write/**
!*/**/_write
之後再將 @/_write
用 Git 初始化,搭配 Obsidian 的第三方外掛(plugin)—— Obsidian Git,我就能持續為我的內容自動用 Git 進行版本控制並推送到我慣用的 Git Registry 備份了。